#ifndef ACCOUNT_H
#define ACCOUNT_H

#include <string>

class Account {
protected:
    std::string accountNumber;
    double balance;

public:
    Account(const std::string& number, double initialBalance);
    virtual ~Account() = default;

    virtual void deposit(double amount);
    virtual bool withdraw(double amount);
    virtual std::string getAccountType() const = 0;
    virtual std::string getDetails() const;
    std::string getAccountNumber() const;
    double getBalance() const;
};

#endif